package cn.seocoo.platform.contrast.service.impl;

import java.util.List;

import cn.seocoo.platform.car.dto.CarDto;
import cn.seocoo.platform.common.constant.ClassContants;
import com.github.pagehelper.PageHelper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import cn.seocoo.platform.contrast.mapper.CarBrowseMapper;
import cn.seocoo.platform.contrast.domain.CarBrowse;
import cn.seocoo.platform.contrast.service.ICarBrowseService;
import cn.seocoo.platform.common.core.text.Convert;

/**
 * 车辆浏览记录 服务层实现
 * 
 * @author wujian
 * @date 2020-01-03
 */
@Service
public class CarBrowseServiceImpl implements ICarBrowseService 
{
	@Autowired
	private CarBrowseMapper carBrowseMapper;

	/**
     * 查询车辆浏览记录信息
     * 
     * @param id 车辆浏览记录ID
     * @return 车辆浏览记录信息
     */
    @Override
	public CarBrowse selectCarBrowseById(Integer id)
	{
	    return carBrowseMapper.selectCarBrowseById(id);
	}
	
	/**
     * 查询车辆浏览记录列表
     * 
     * @param carBrowse 车辆浏览记录信息
     * @return 车辆浏览记录集合
     */
	@Override
	public List<CarBrowse> selectCarBrowseList(CarBrowse carBrowse)
	{
	    return carBrowseMapper.selectCarBrowseList(carBrowse);
	}
	
    /**
     * 新增车辆浏览记录
     * 
     * @param carBrowse 车辆浏览记录信息
     * @return 结果
     */
	@Override
	public int insertCarBrowse(CarBrowse carBrowse)
	{
	    return carBrowseMapper.insertCarBrowse(carBrowse);
	}
	
	/**
     * 修改车辆浏览记录
     * 
     * @param carBrowse 车辆浏览记录信息
     * @return 结果
     */
	@Override
	public int updateCarBrowse(CarBrowse carBrowse)
	{
	    return carBrowseMapper.updateCarBrowse(carBrowse);
	}

	/**
     * 删除车辆浏览记录对象
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
	@Override
	public int deleteCarBrowseByIds(String ids)
	{
		return carBrowseMapper.deleteCarBrowseByIds(Convert.toStrArray(ids));
	}

	@Override
	public List<CarDto> getCarList(Integer appUserId) {
		return carBrowseMapper.getCarList(appUserId);
	}

	/**
	 * @Author WuJian
	 * @Description //清空
	 * @Date 10:28 2020/1/3
	 * @Param [appUserId]
	 * @return int
	 **/
	@Override
	public int updateBrowseForDel(Integer appUserId) {
		return carBrowseMapper.updateBrowseForDel(appUserId);
	}

	@Override
	public int clearBrowse(Integer id) {

		CarBrowse carBrowse = carBrowseMapper.selectCarBrowseById(id);
		carBrowse.setDelFlag(ClassContants.IS_DEL_FLAG);
		return carBrowseMapper.updateCarBrowse(carBrowse);
	}

}
